package packLigaDeFutbol;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;

public class GestorJornadas {
	private static GestorJornadas miGestor = new GestorJornadas();
	
	private GestorJornadas(){
		
	}
	
	public static GestorJornadas get() {

		if (miGestor == null){
			miGestor = new GestorJornadas();
		}
		return miGestor;
	}

	public ResultSet obtenerPartidosDeJornada(int pIdJornada) {
		ResultSet rs = null;
		String strSQL = "SELECT  p.idpartido AS valor, concat(e1.nombre, ' - ',e2.nombre) AS nombre " +
						"FROM partido p , equipo e1, equipo e2 " +
						"WHERE p.idjornada = " + pIdJornada + " " +
						"AND p.idlocal = e1.idEquipo " +
						"AND p.idvisitante = e2.idEquipo";
		try {
			rs = Principal.BBDD.consulta(strSQL);
		}
		catch(SQLException e) {
			e.printStackTrace();
		}
		return rs;
	}
	
	
	/**
	 * @author jonatanperez
	 * Inserta las (numParticipantes-1)*2 jornadas en la BD (por ejemplo, si hay 20 equipos, inserta 38 jornadas)
	 */
	public int insertarJornadasEnBD(Jornada pJornada) {
		int res = -1;
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
		String fecha = sdf.format(pJornada.getFecha().getTime());
		String strSQL = "INSERT INTO jornada(numjornada, fecha, idtemporada) " + 
						"VALUES (" + 
						pJornada.getNumJornada() + ", '" + 
						fecha + "', " +
						pJornada.getIdTemporada() + 
						");";
		try {
			res = Principal.BBDD.ultimoID(strSQL);
		}
		catch(SQLException e) {
			e.printStackTrace();
		}
		return res;
	}
}
